package com.duobaoyu.dby.supply.common.biz.dto.order;

import com.duobaoyu.dby.common.mybatis.support.Query;
import com.duobaoyu.dby.supply.common.biz.dto.config.PreWarningConditionDTO;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.util.List;

/**
 * 分页获取订单列表入参
 * @author chenms
 * @date 2023/10/16 4:15 PM
 */
@EqualsAndHashCode(callSuper = true)
@Data
public class OrderPageDTO extends Query {
    /**
     * 渠道编码
     */
    private String channelCode;

    /**
     * 业务来源
     */
    private String showServerName;
    /**
     * 订单创建开始时间
     */
    private String orderCreateStartTime;

    /**
     * 订单创建结束时间
     */
    private String orderCreateEndTime;

    /**
     * 订单状态
     */
    private List<Integer> orderStatusList;

    /**
     * 订单关键字.订单搜索：精准查询，支持业务订单编号，供应链总父子订单编号，渠道对接文档全部订单编号查询
     */
    private String orderKeyword;

    /**
     * 商品关键字.标题模糊搜索，SKUId、SPUId、实物渠道SKUId精准查询
     */
    private String productKeyword;

    /**
     * 收货搜索关键字.收货人模糊搜索，收货人手机号精准查询
     */
    private String consigneeKeyword;

	/**
	 * 快递承运编号
	 */
	private String deliveryOrderSn;

	/**
	 * 充值账号
	 */
	private String rechargeAccount;

    /**
     * 商户ID
     */
    private String mchId;

	/**
	 * 商品类型
	 * //@see com.duobaoyu.dby.channel.adapter.enums.biz.product.ProductTypeEnum
	 */
	private String productType;

	/**
     * 预警策略ID
     */
    private Long preWarningStrategyId;
	/*******************************************不需对前端提供的字段***********************************************/
    /**
     * 预警条件
     */
    @ApiModelProperty(value = "预警条件", hidden = true)
    private PreWarningConditionDTO preWarningCondition;
}
